Proposal for Project to Develop
A New Technical Report

1. Source of the Proposed Project

1.1 Title - Technical Report for finalizers and associated object-oriented COBOL language elements

1.2 Date Submitted - May 30, 2000

1.3 Proposer(s) - J4;  No J4 members are members of NCITS.

2. Process Description for the Proposed Project
 

2.1 Project Type (Development or Revision) -  RI

2.2 Type of Document - Technical Report

2.3 Definitions of Concepts and Special Terms

finalizer:  A pseudo-method that is invoked by the runtime system before the storage of an instance object or a factory object is reclaimed.

2.4 Expected Relationship with Approved Reference Models, Frameworks, Architectures, etc.

This technical report will be compatible with the COBOL standard that is currently being developed as ISO/IEC 1989:yyyy.

2.5 Recommended NCITS Development Technical Committee (Existing or New) - J4


2.6 Anticipated Frequency and Duration of Meetings 

J4 meets six times per year.  Each meeting is from five to eleven days long.  This TR should take no more than 2 days per meeting for two years.

Work on this TR will be done by email, in as much as possible, so that experts in object orientation can participate with a minimal amount of travel.

2.7 Target Date for Initial Public Review (Milestone 4) - June 2002


2.8 Estimated Useful Life of Standard or Technical Report 

The useful life of this technical report will be until the next COBOL revision is approved, which is expected to be about five years.

3. Business Case for Developing the Proposed Standard or Technical Report
 

3.1 Description

A finalizer will be invoked before the storage for an object is reclaimed so that resources can be freed.  The technical report will specify the syntax of a finalizer and its semantics.

It may be necessary to specify additional object-oriented language elements, but this will not be determined until the development phase of this project.

3.2. Existing Practice and the Need for a Standard

Without finalizers, cross-implementor OO COBOL programming is largely impossible due to the different way each implementor treats object destruction.

The Java model is changing with respect to finalizers, hence time is needed to explore their ramifications and they should not be included in the standard that is currently being drafted.

When finalizers are added, they should be designed with the larger object-oriented framework in mind.

Publication of a technical report will give implementors information on how finalizers will be specified.  The writers of the COBOL standard can learn from these implementations before including finalizers in a future standard.

3.3. Implementation Impacts of the Proposed Standard

3.3.1 Development Costs

Total:  $195,000

3.3.2 Impact on Existing or Potential Markets

This technical report will help programmers who know COBOL to use it in an object-oriented environment and save them the time required to retrain.

COBOL is a widely-used programming language, so the audience for this technical report is immeasurably large.

The time required for implementors to conform to the technical report is considerably less than the time it will save their customers.

3.3.3 Costs and Methods for Conformity Assessment

A suppliers' declaration of conformity is the expected means of conformity assessment.

The requirements for conformity will be specified in the technical report.  The resources for specifying them are included in 3.3.1 of this document.

3.3.4 Return on Investment

Implementors who conform to this technical report should have an increased user base.

3.4 Legal Considerations
3.4.1 Patent Assertions - None of which we are aware


3.4.2 Dissemination of the Standard or Technical Report

The acknowledgement in all published COBOL standards has made it possible to use them without restriction.  There are no other  IPR assertions of which we are aware  

4. Related Standards Activities

4.1 Existing Standards - none


4.2 Related Standards Activity 

Projects NCITS/22-RI and ISO/IEC 22.01.07, which are for development of ISO/IEC 1989:yyyy -- Programming Language COBOL, are also being developed by J4 under national terms of reference.

4.3 Recommendations for Coordinating Liaison - none


4.4 Recommendations for Close Liaison - none